home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The PC-SIG Library 10
/
The PC-Sig Library - Shareware for the IBM PC and Compatibles (PC-SIG)(Tenth Edition Disks 1-2804)(1991).iso
/
PC_SIGCD
/
01
/
6
/
DISK0162.ZIP
/
ATTRIB.SB
< prev
next >
Wrap
Text File
|
1984-06-25
|
2KB
|
73 lines
'ATTRIB.SB: Display all PC screen attributes, modified from
' Peter Norton's book "Inside the IBM PC".
INCLUDE SCREEN.INC
INCLUDE INPUT.INC
PROCEDURE MAIN
DO INITIALIZE.SCREEN
DO INITIALIZE.INPUT
L.TITLE$ = "ATTRIB - Display IBM PC Screen Attributes"
R.TITLE$ = "Structured BASIC version 1.12"
DO SET.TITLES
FUNC.MSG$ = "Sample Program #2"
DO SET.FUNCTION.MSG
DO GET.DISPLAY.TYPE
DO SET.TITLES
DO SET.FUNCTION.MSG
DO BORDERS
DO BUILD.DISPLAY.ARRAY
DO FINISH
ENDPROC
PROCEDURE GET.DISPLAY.TYPE
LOCATE 5,1 : PRINT "Is this a color-graphics display? ";
DO GET.YES.OR.NO
IF ANSWER = YES
SEGVAL! = &HB800 'Color segment
ELSE
SEGVAL! = &HB000 'Monochrome segment
ENDIF
DEF SEG = SEGVAL!
PRINT
ENDPROC
PROCEDURE BORDERS
'Display surrounding messages
LOCATE 11,1 : PRINT "Normal"
LOCATE 12,1 : PRINT "normal"
LOCATE 19,1 : PRINT "Normal"
LOCATE 20,1 : PRINT "blinking"
LOCATE 11,69 : PRINT "Bright"
LOCATE 12,69 : PRINT "normal"
LOCATE 19,69 : PRINT "Bright"
LOCATE 20,69 : PRINT "blinking"
FOR HEX.DIGIT% = 0 TO 15
LOCATE 6,HEX.DIGIT% * 3 + 17
PRINT HEX$(HEX.DIGIT%)
LOCATE HEX.DIGIT% + 8,11
PRINT HEX$(HEX.DIGIT%)
NEXT HEX.DIGIT%
LOCATE ,,0
ENDPROC
PROCEDURE BUILD.DISPLAY.ARRAY
FOR ROW% = 0 TO 15
FOR COL% = 0 TO 15
POKE (ROW% + 7) * 160 + COL% * 6 + 31, ROW% * 16 + COL%
POKE (ROW% + 7) * 160 + COL% * 6 + 33, ROW% * 16 + COL%
POKE (ROW% + 7) * 160 + COL% * 6 + 35, ROW% * 16 + COL%
POKE (ROW% + 7) * 160 + COL% * 6 + 32, 65 ' 65 is char "A"
NEXT COL%
NEXT ROW%
ENDPROC
PROCEDURE FINISH
LINE.24.MSG$ = "Press any key to return to DOS..."
DO SET.LINE.24
DO IN.GET.KEY
DO CLEAR.SCREEN
SYSTEM
ENDPROC